package com.cy;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/*
* 在springboot中只能有一个类是启动类，这个类需要：
* 1）使用@springbootapplication注解进行描述
* 2）此类中会有一个main方法，在main方法中初始化springboot默认配置
*
*
* FAQ 请问此类启动时会做什么
* 1）通过线程（Thread）调用IO从磁盘查找相应的类并将其读到内存（类加载）--Class Loading
* 2)对读到内存中的类进行分析，哪些是交给spring管理的类，由spring管理的这些类哪些是配置类
* 3）对spring管理的类底层要进行解析，将这些类的信息封装到指定对象（Map<String,BeanDefination>）
* 4)spring框架可以基于Bean的配置，借助工厂管理对象，借助Map储存对象（实例-Bean对象），管理对象
* 5）我们需要对象时，可以直接从spring容器中（IOC）中去取
* */
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}
